Link OpenSSL statically on OSX
authorAlex Crichton <alex@alexcrichton.com>
Mon, 21 Nov 2016 20:36:30 +0000 (12:36 -0800)
committerAlex Crichton <alex@alexcrichton.com>
Mon, 21 Nov 2016 20:37:36 +0000 (12:37 -0800)
Now that Cargo requires OpenSSL >= 1.0.1 transitively through the `openssl-sys`
0.9 release the dynamic libraries for OpenSSL are no longer located on OSX by
default. This means that the support necessary for libssh2 needs to be
statically linked rather than dynamically linked.

Closes #3303

Makefile.in

index d37262726c8c15ab9be81d668786c44e922f4b2d..19c3e2952ec8fe4e655f60c427dc00885e9c7e17 100644 (file)
@@ -232,6 +232,12 @@ OPENSSL_CFLAGS_i686-unknown-linux-gnu := -m32
 OPENSSL_CFLAGS_i686-unknown-linux-musl := -m32
 
 define BUILD_OPENSSL
+
+ifdef CFG_ENABLE_NIGHTLY
+cargo-$(1): export OPENSSL_STATIC := 1
+test-unit-$(1): export OPENSSL_STATIC := 1
+endif
+
 ifdef OPENSSL_OS_$(1)
 ifdef CFG_ENABLE_NIGHTLY
 OPENSSL_INSTALL_$(1) := $$(CFG_BUILD_DIR)/target/openssl/$(1)-install
@@ -250,9 +256,7 @@ target/openssl/$(1).stamp: target/openssl/openssl-$$(OPENSSL_VERS).tar.gz \
        touch $$@
 
 # variables read by various build scripts to find openssl
-cargo-$(1): export OPENSSL_STATIC := 1
 cargo-$(1): export OPENSSL_DIR := $$(OPENSSL_INSTALL_$(1))
-test-unit-$(1): export OPENSSL_STATIC := 1
 test-unit-$(1): export OPENSSL_DIR := $$(OPENSSL_INSTALL_$(1))
 
 # build libz statically into the cargo we're producing